return的用法是什么?若用在for循环中,还会执行下一次循环吗?

【IT修真院——深圳分院】

分享人:郭俊伟

目录

1.背景介绍

2.知识剖析

3.常见问题

4.解决方案

5.编码实战

6.扩展思考

7.参考文献

8.更多讨论

1.背景介绍

return

表示从被调函数返回到主调函数继续执行,返回时可附带一个返回值,由return后面的参数指定。 return的返回值通常是必要的,因为函数调用的时候计算结果通常是通过返回值带出的。 如果函数执行不需要返回计算结果,也经常需要返回一个状态码来表示函数执行的顺利与否(-1和0就是最常用的状态码), 主调函数可以通过返回值判断被调函数的执行情况。

2.知识剖析

在使用return的时候,返回值是必须有的,作用就是把固定不变的、常用的代码封装起来, 写在类里,每次用到的时候就调用就行了,如果需要这个功能返回一个值, 甚至一个对象,那么就需要用到返回值了,就是用 return 把值返回给调用的目标
return 语句会终止函数的执行,并返回函数的值。
                
                    比如:
                    function a(){
                    return 10;//这个时候,函数a的值会等于10,并且函数中下面的内容不再执行
                    document.write(50);//由于上面已经return了,这条代码不会执行
                    }
                
                
至于什么时候会用到,那看你要函数来做什么,是否有必要需要返回值; 比如,用函数来做一个加法运算,需要它返回值,demo如下:
                
                    function  a( b, c ) {
                    return b  + c;
                    }
                    那么调用:
                    var b = a(5, 80);
                    这个时候,abc这个变量的值会是85
                    如果想直接输出结果,不要返回值那就
                    function a( b, c ) {
                    document.write( b + c );
                    }

                    这个时候调用, var b = a(5, 80);
                    那么页面会输出85,但b是没有值的;
                
                
也可以说默认函数是没有返回值的。 通常函数经过一系列处理后需要给外部返回一个值或者对象

                比如function ba(a,b){
                    return a+b;
                    documet.write(a+b);
                    };
                alert(ba(1,2));
                        
如果没有return将会弹出undefined

3.常见问题

若用在for循环中用到了return,还会执行下一次循环吗?

                
                    function counter() {
                    for (var count = 1; count<10 ; count++) {  // infinite loop
                    console.log(count + "A");

                    return;                         //直接就返回了,下面的代码不会再执行

                    console.log(count + "B");
                    }
                    console.log(count + "C");
                    }

                    counter();

                    // Output:
                    // 1A
                
                

中断功能,return被调用,函数立即停止在该点上。

                
                    function counter() {
                    for (var count = 1; conut<10 ; count++) {  // infinite loop
                    console.log(count + "A"); // until 5
                    if (count === 5) {
                    return;
                    }
                    console.log(count + "B");  // until 4
                    }
                    console.log(count + "C");  // never appears
                    }

                    counter();
                
                

4.解决方案

......

5.编码实战

                
                    function abc(a,b) {
                    var c = a + b;
                    return c;
                    }
                    var d=abc(5,9);
                    alert(d);===>14;
                
            

6.扩展思考

除了return,还有啥可以让for循环中断呢?

就是break 跟 continue ;

break

break 语句会使运行的程序,立刻退出包含在最内层的循环,或者退出一个 switch 语句。 由于它是用来退出循环,或者 switch 语句,所以只有当它出现在这些语句时,这种形式的 break 语句才是合法的。 如果一个循环的终止条件非常复杂,那么使用 break 语句来实现某些条件,比用一个循环表达式,来表达所有的条件容易得多。

continue

continue 语句和 break 语句相似。所不同的是,它不是退出一个循环,而是开始循环的一次新迭代。 continue 语句只能用在 while 语句、do/while 语句、for 语句、或者 for/in 语句的循环体内,在其它地方使用都会引起错误!

[dié dài]

迭代

迭代是重复反馈过程的活动 ,其目的通常是,为了逼近所需目标或结果。 每一次对过程的重复称为一次“迭代”,而每一次迭代得到的结果,会作为下一次迭代的初始值。

迭代函数

在数学中,迭代函数是在碎形几何,和动力系统中深入研究的对象。迭代函数是重复的,与自身复合的函数,这个过程叫做迭代。

7.参考文献

参考:峰峰师兄

参考:冲冲老师

《Javascript DOM 编程艺术》

8.更多讨论

什么是迭代,或者你已经联想到了递归,想深入了解「递归」和「迭代」有哪些区别?

参考:我是冲冲,我为疑难杂症代言!点我

鸣谢

感谢大家观看

BY : 沁修 | somebody | 小明 | 郭俊伟 |